// pages/addaddress/addaddress.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    addressId:0,
    receiver: '',
    phone: '',
    region: ['省', '市', '区'],
    customItem: '全部',
    area: ''
  },
  input(e) {
      let data = {}
      data[e.currentTarget.dataset.key] = e.detail.value
      this.setData(data)
  },
  return: function (e) {
      wx.navigateBack({
          delta: 1,
      })
  },
  bindRegionChange: function (e) {
      console.log('picker发送选择改变，携带值为', e.detail.value)
      this.setData({
          region: e.detail.value
      })
  },

  submit() {
      let address = {
          memberId: wx.userInfo._id,
          receiver: this.data.receiver,
          phone: this.data.phone,
          city: this.data.region.join(''),
          area: this.data.area
      }
      //验证收货人
      if (!address.receiver || !/^[\u2E80-\u9FFF]+$/.test(address.receiver)) {
          wx.showToast({
              title: '请输入正确的收货人',
              icon: 'fail',
              duration: 2000
          })
          return false
      }
      //验证电话号码
      if (!address.phone || !/^1\d{10}$/.test(address.phone)) {
          wx.showToast({
              title: '请输入正确的电话号码',
              icon: 'fail',
              duration: 2000
          })
          return false
      }
      //验证地址
      if (!address.city) {
          wx.showToast({
              title: '请选择地址',
              icon: 'fail',
              duration: 2000
          })
          return false
      }
      if (this.data.addressId) { //修改
          address.addressId = this.data.addressId
          wx.put('http://localhost:3000/wx/address', address).then(res => {
              if (!res.errMsg) {
                  wx.showToast({
                      title: '修改成功',
                      icon: 'success',
                      duration: 2000
                  })
                  setTimeout(() => {
                      wx.navigateBack({
                          delta: -1,
                      })
                  })
              } else {
                  wx.showToast({
                      title: res.errMsg,
                      icon: 'fail',
                      duration: 2000
                  })
              }
          })
      } else { ///新增
          wx.post('http://localhost:3000/wx/address', address).then(res => {
              if (!res.errorMsg) {
                  wx.showToast({
                      title: '新增成功',
                      icon: 'success',
                      duration: 2000
                  })
                  setTimeout(() => {
                      wx.navigateBack({
                          delta: -1,
                      })
                  },2000)
              } else {
                  wx.showToast({
                      title: res.errorMsg,
                      icon: 'fail',
                      duration: 2000
                  })
              }
          })
      }
  },


  
    /**
     * 生命周期函数--监听页面加载
     */
    getAddressDetail(){
        wx.get('http://localhost:3000/wx/address/detail',{
            addressId:this.data.addressId
        }).then(res => {
            this.setData({
                receiver:res.receiver,
                phone:res.phone,
                city:res.city,
                area:res.area
            })
        })
    },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
      if(options.addressId){
          this.setData({
            addressId:options.addressId
          })
          ///获取地址详情
          this.getAddressDetail()
        }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})  
